﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;

namespace JMI_Nucleo.Classe
{
    public class IniFile
    {
      public string path;

      [DllImport("kernel32")]
      private static extern long WritePrivateProfileString(string section,string key,string val,string filePath);
      [DllImport("kernel32")]
      private static extern int GetPrivateProfileString(string section,string key,string def,StringBuilder retVal,int size,string filePath);

      /// <summary>
      /// INIFile Constructor.
      /// </summary>
      /// <param name="INIPath">  
      public IniFile(string INIPath)
      {
        path = INIPath;
      }
      /// <summary>
      /// Write Data to the INI File
      /// </summary>
      /// <param name="Section">  /// Section name
      /// <param name="Key">  /// Key Name
      /// <param name="Value">  /// Value Name
      public void IniWriteValue(string Section,string Key,string Value)
      {
        WritePrivateProfileString(Section,Key,Value,this.path);
      }
  
      /// <summary>
      /// Read Data Value From the Ini File
      /// </summary>
      /// <param name="Section">  /// <param name="Key">  /// <param name="Path">  /// <returns></returns>
      public string IniReadValue(string Section,string Key)
      {
        StringBuilder temp = new StringBuilder(255);
        int i = GetPrivateProfileString(Section,Key,"",temp,255,this.path);
        return temp.ToString();
      }
    }
}
